projects
/
xen.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c9e8655
)
libxc: Fix xc_translate_foreign_address in non-paged mode
author
Keir Fraser
<keir.fraser@citrix.com>
Tue, 31 Mar 2009 10:32:56 +0000
(11:32 +0100)
committer
Keir Fraser
<keir.fraser@citrix.com>
Tue, 31 Mar 2009 10:32:56 +0000
(11:32 +0100)
Returns paddr rather than gfn when in non-paged mode. Add a shift to
fix it.
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
tools/libxc/xc_pagetab.c
patch
|
blob
|
history
diff --git
a/tools/libxc/xc_pagetab.c
b/tools/libxc/xc_pagetab.c
index 00ee0f8ea4299a897ad77ce1ec42b1cecc3bb07d..1a4a3d01e5fa005a03ffd18f6d786f23ac71190b 100644
(file)
--- a/
tools/libxc/xc_pagetab.c
+++ b/
tools/libxc/xc_pagetab.c
@@
-32,7
+32,7
@@
unsigned long xc_translate_foreign_address(int xc_handle, uint32_t dom,
&ctx, sizeof ctx) != 0)
return 0;
if (!(ctx.cr0 & CR0_PG))
- return virt;
+ return virt
>> PAGE_SHIFT
;
pt_levels = (ctx.msr_efer&EFER_LMA) ? 4 : (ctx.cr4&CR4_PAE) ? 3 : 2;
paddr = ctx.cr3 & ((pt_levels == 3) ? ~0x1full : ~0xfffull);
} else {